home *** CD-ROM | disk | FTP | other *** search
/ SGI Freeware 1999 August / SGI Freeware 1999 August.iso / dist / fw_objc.idb / usr / freeware / catman / u_man / cat1 / objc.Z / objc
Encoding:
Text File  |  1999-07-16  |  28.6 KB  |  859 lines

  1.  
  2.  
  3.  
  4.      oooobbbbjjjjcccc((((1111))))           UUUUNNNNIIIIXXXX SSSSyyyysssstttteeeemmmm VVVV ((((OOOOcccctttt 22229999,,,, 1111999999997777))))           oooobbbbjjjjcccc((((1111))))
  5.  
  6.  
  7.  
  8.      NNNNAAAAMMMMEEEE
  9.       objc - Portable Object Compiler
  10.  
  11.      SSSSYYYYNNNNOOOOPPPPSSSSIIIISSSS
  12.       oooobbbbjjjjcccc [ options ] file    ...
  13.  
  14.      DDDDEEEESSSSCCCCRRRRIIIIPPPPTTTTIIIIOOOONNNN
  15.       oooobbbbjjjjcccc is a compiler for compiling Objective C objects into C,
  16.       or directly into a binary object file    (by automatically
  17.       invoking an external C compiler).
  18.  
  19.       Command line options that are    not recognized by oooobbbbjjjjcccc are
  20.       passed on to cccccccc(1).
  21.  
  22.  
  23.       ----bbbbooooeeeehhhhmmmm
  24.  
  25.            The preferred interface to turn on garbage collection,
  26.            is to use the ----ggggcccc flag (which currently is equivalent
  27.            to ----bbbbooooeeeehhhhmmmm).
  28.  
  29.            -boehm links against oooobbbbjjjjccccrrrrttttggggcccc....aaaa which is    a version of
  30.            the runtime library, compiled with -DOBJCRT_BOEHM.
  31.            This option also    adds the library gc.a (a mark-and-
  32.            sweep garbage collector,    needs to be installed for this
  33.            option to work) to the list of libraries    that are
  34.            automatically linked into the program.
  35.  
  36.  
  37.       ----BBBBpppprrrreeeeffffiiiixxxx
  38.  
  39.            Use _p_r_e_f_i_x as prefix for    the bbbbiiiinnnn,,,, iiiinnnncccclllluuuuddddeeee and lllliiiibbbb
  40.            directories when    searching for binaries,    include    files
  41.            and libraries.  The default prefix is set to the
  42.            installation directory (e.g. /usr/local).  The
  43.            environment variable OOOOBBBBJJJJCCCCDDDDIIIIRRRR overrides the default, and
  44.            this option can be used to override the value of    the
  45.            environment variable, on    the command line.
  46.  
  47.  
  48.       ----cccc    Produce    a .o file but do not link.  Equivalent to -Fo.
  49.  
  50.  
  51.       ----CCCC    When used with the -E option, this option will
  52.            preserve    comments in the    preprocessed code.  Otherwise,
  53.            this option is equivalent to -Fi, i.e. generate C code,
  54.            by translating Objective    C into C, but do not run the C
  55.            compiler    to produce a .o    file.
  56.  
  57.  
  58.       ----cccchhhheeeecccckkkk
  59.  
  60.  
  61.  
  62.  
  63.      Page 1                         (printed 6/28/99)
  64.  
  65.  
  66.  
  67.  
  68.  
  69.  
  70.      oooobbbbjjjjcccc((((1111))))           UUUUNNNNIIIIXXXX SSSSyyyysssstttteeeemmmm VVVV ((((OOOOcccctttt 22229999,,,, 1111999999997777))))           oooobbbbjjjjcccc((((1111))))
  71.  
  72.  
  73.  
  74.            Implemented for the binary driver objc.exe only.
  75.            Forces the driver to print a command whenever it    is
  76.            supposed    to invoke some tool using a system() call.
  77.            Commands    are simply printed, they are not executed.
  78.            This is the default configuration of the    Macintosh MPW
  79.            driver.
  80.  
  81.  
  82.       ----ccccpppplllluuuussss
  83.  
  84.            Use the CCCC++++++++ compiler instead of the C compiler to
  85.            compile the output of oooobbbbjjjjcccc1111.... The    driver will
  86.            automatically select this mode oooobbbbjjjjccccppppllllssss1111 for files
  87.            ending with a .cc or .mm    suffix (C++ files or
  88.            Objective-C compiled by C++ respectively).
  89.  
  90.  
  91.       ----cccctttthhhhrrrreeeeaaaaddddssss
  92.  
  93.            Link against the    runtime    library    oooobbbbjjjjccccrrrrtttttttthhhh....aaaa which is a
  94.            thread-safe version of the oooobbbbjjjjccccrrrrtttt....aaaa runtime library
  95.            (compiled with -DOBJCRT_CTHREADS).
  96.  
  97.  
  98.       ----ddddllll    Combine    a number of object files into a    dynamic
  99.            module, to be loaded by dlopen()    or similar, into a
  100.            running Objective-C program.   This option makes    sure
  101.            the necessary code is generated to automatically
  102.            initialize Objective-C classes that are loaded into the
  103.            program.
  104.  
  105.  
  106.       ----ddddoooollllllllaaaarrrrssss
  107.  
  108.            Passes flags to the C compiler to allow dollar
  109.            characters in identifiers.  Only    tested with GNU    C.
  110.  
  111.  
  112.       ----ddddyyyynnnnaaaammmmiiiicccc
  113.  
  114.            Must be specified to link a program that    will load
  115.            dynamic modules (modules    that are built with -dl).
  116.            Attempts    to link    against    oooobbbbjjjjccccrrrrtttt....ssssoooo and oooobbbbjjjjppppaaaakkkk....ssssoooo    shared
  117.            runtime libraries, if those libraries can be found.
  118.  
  119.            -dynamic    passes on -noShared to the stage 1 compiler
  120.            and registers the function _objcInitNoShared as runtime
  121.            initialization function.     This is strictly speaking not
  122.            needed on UNIX, but essential when using    DLLs on
  123.            Windows,    so it is done on all platforms.
  124.  
  125.            In addition, -dynamic causes on some platforms to link
  126.  
  127.  
  128.  
  129.      Page 2                         (printed 6/28/99)
  130.  
  131.  
  132.  
  133.  
  134.  
  135.  
  136.      oooobbbbjjjjcccc((((1111))))           UUUUNNNNIIIIXXXX SSSSyyyysssstttteeeemmmm VVVV ((((OOOOcccctttt 22229999,,,, 1111999999997777))))           oooobbbbjjjjcccc((((1111))))
  137.  
  138.  
  139.  
  140.            against the necessary libraries that define dynamic
  141.            linking functions.  For example,    on Linux it adds a
  142.            -rdynamic flag.    On HP-UX it passes a -E    flag to    the
  143.            link editor.  On    Windows, (with the WATCOM driver), it
  144.            adds a -br flag to use the DLL versions of the WATCOM
  145.            runtime.
  146.  
  147.  
  148.       ----EEEE    Preprocess input and write output to the ssssttttddddoooouuuutttt....
  149.  
  150.  
  151.       ----FFFFlllleeeetttttttteeeerrrr
  152.  
  153.            Stop at the compilation stage specified by lllleeeetttttttteeeerrrr....
  154.            Letter can be one of o (-Fo is equivalent to -c), or
  155.            other file suffixes such    as i,c,j etc.
  156.  
  157.  
  158.       ----ggggcccc    Turn on    garbage    collection.  Client programs compiled
  159.            with this flag use +new to allocate objects (as usual),
  160.            but do not have to send a -free message to destroy
  161.            objects.
  162.  
  163.  
  164.       ----gggg    Produce    debugging symbols and attempts to link against
  165.            oooobbbbjjjjccccrrrrtttt____gggg....aaaa and oooobbbbjjjjppppaaaakkkk____gggg....aaaa runtime libraries with    debug
  166.            information, if they can    be found. Since    oooobbbbjjjjcccc is    also
  167.            emitting    by default linetags that refer to the original
  168.            source file, it is possible to step through the code
  169.            using any C debugger.
  170.  
  171.  
  172.       ----hhhheeeellllpppp
  173.  
  174.            Print overview of compiler switches.
  175.  
  176.  
  177.       ----iiii    Generate a TDF capsule (.j file) for use with the ttttcccccccc
  178.            compiler    and do not link.  Equivalent to    -Fj.
  179.  
  180.  
  181.       ----IIIIddddiiiirrrr
  182.  
  183.            Add ddddiiiirrrr to the search path for include files.
  184.  
  185.  
  186.       ----iiiinnnnlllliiiinnnneeeeccccaaaacccchhhheeee
  187.  
  188.            Generate    inline cache code for calls to _imp()
  189.            messenger.  The inline cache messenger associates to
  190.            each message expression its own cache, and will in many
  191.            cases bypass the    default    objcrt messenger.
  192.  
  193.  
  194.  
  195.      Page 3                         (printed 6/28/99)
  196.  
  197.  
  198.  
  199.  
  200.  
  201.  
  202.      oooobbbbjjjjcccc((((1111))))           UUUUNNNNIIIIXXXX SSSSyyyysssstttteeeemmmm VVVV ((((OOOOcccctttt 22229999,,,, 1111999999997777))))           oooobbbbjjjjcccc((((1111))))
  203.  
  204.  
  205.  
  206.            It is safe to use this option to    produce    binary
  207.            libraries of objects; the libraries can later be    used
  208.            both from within    programs that are compiled either with
  209.            or without the -inlinecache option.
  210.  
  211.  
  212.       ----iiiimmmmppppoooorrrrtttt
  213.  
  214.            Pass flags to the C preprocessor    to do the traditional
  215.            Objective-C constructs #    import and // on which we
  216.            usually don't depend.  Note that    it's also possible to
  217.            set the environment variable CPP    to a preprocessor
  218.            that's newline-terminated-comments capable, or to use
  219.            the cvtimport(1)    utility    so that    the flag is not
  220.            needed.
  221.  
  222.  
  223.       ----jjjjffffoooooooo
  224.  
  225.            Find and    add a TDF library ffffoooooooo....ttttllll....
  226.  
  227.  
  228.       ----JJJJddddiiiirrrr
  229.  
  230.            Add ddddiiiirrrr to the search path for TDF libraries.
  231.  
  232.  
  233.       ----llllffffoooooooo
  234.  
  235.            Find and    add a library lllliiiibbbbffffoooooooo....aaaa (or corresponding
  236.            shared library, depending on the    system).
  237.  
  238.  
  239.       ----LLLLddddiiiirrrr
  240.  
  241.            Add ddddiiiirrrr to the search path for libraries.
  242.  
  243.  
  244.       ----mmmmaaaaiiiinnnn    ffffuuuunnnnccccttttiiiioooonnnn
  245.  
  246.            Emit runtime initialization code    as first statement in
  247.            ffffuuuunnnnccccttttiiiioooonnnn.... The default function name is mmmmaaaaiiiinnnn,,,, but    this
  248.            can be changed using this option    if it's    not desirable
  249.            for some    reason to compile the main() function using
  250.            oooobbbbjjjjcccc....
  251.  
  252.  
  253.       ----mmmmppppwwwwttttoooooooollll
  254.  
  255.            Macintosh specific.  Generates an MPW tool.  Sets
  256.            creator type to the MPW type and    adds the libraries
  257.            defined in the environment variable OBJCMPWLIBS.
  258.  
  259.  
  260.  
  261.      Page 4                         (printed 6/28/99)
  262.  
  263.  
  264.  
  265.  
  266.  
  267.  
  268.      oooobbbbjjjjcccc((((1111))))           UUUUNNNNIIIIXXXX SSSSyyyysssstttteeeemmmm VVVV ((((OOOOcccctttt 22229999,,,, 1111999999997777))))           oooobbbbjjjjcccc((((1111))))
  269.  
  270.  
  271.  
  272.       ----nnnnooooBBBBlllloooocccckkkkssss
  273.  
  274.            Define the preprocessor symbol OBJC_BLOCKS as 0 (by
  275.            default the symbol is defined as    1), and    make the
  276.            parser refuse to    parse Objective-C blocks.  See the
  277.            documentation of    the Block class    for more information.
  278.  
  279.  
  280.       ----nnnnooooCCCCaaaacccchhhheeee
  281.  
  282.            Turn off    global Objective C messenger cache.  This
  283.            option can be used with -inlineCache.  Sets the objcrt
  284.            variable    noCacheFlag to 1.  The program can selectively
  285.            turn on caching by setting the variable to 0.
  286.  
  287.  
  288.       ----nnnnooooIIII    Do not search header files in the directories of the
  289.            runtime (objcrt)    and of the collection class library
  290.            (objpak).
  291.  
  292.  
  293.       ----nnnnooooLLLLiiiibbbbssss
  294.  
  295.            Do not link against the runtime (objcrt)    and the
  296.            collection class    library    (objpak).
  297.  
  298.  
  299.       ----nnnnooooNNNNiiiillllRRRRccccvvvvrrrr
  300.  
  301.            Messages    to nil,    the NULL Object, are handled by    the
  302.            nilHandler funtion.  This option    registers a handler
  303.            that aborts the process.
  304.  
  305.  
  306.       ----nnnnooooCCCCaaaatttteeeeggggoooorrrriiiieeeessss
  307.  
  308.            Do not allow (parse) categories.     It is still possible
  309.            to use the method addMethodsTo: instead.
  310.  
  311.  
  312.       ----nnnnooooFFFFiiiilllleeeerrrr
  313.  
  314.            Do not automatically link the AsciiFiler    into the
  315.            program.     Do not    automatically generate filer code for
  316.            class implementations.  See the documentation on    the
  317.            show, storeOn and readFrom methods, and the AsciiFiler
  318.            class, for more information.
  319.  
  320.  
  321.       ----nnnnooooFFFFwwwwdddd
  322.  
  323.            Generate    code for, and calls to,    the traditional    C
  324.  
  325.  
  326.  
  327.      Page 5                         (printed 6/28/99)
  328.  
  329.  
  330.  
  331.  
  332.  
  333.  
  334.      oooobbbbjjjjcccc((((1111))))           UUUUNNNNIIIIXXXX SSSSyyyysssstttteeeemmmm VVVV ((((OOOOcccctttt 22229999,,,, 1111999999997777))))           oooobbbbjjjjcccc((((1111))))
  335.  
  336.  
  337.  
  338.            messenger, ____iiiimmmmpppp(((()))),,,, instead of calls to our forwarding C
  339.            messenger, ffffwwwwddddiiiimmmmpppp(((())))....  Programs compiled with -noFwd
  340.            compile faster and are significantly smaller in
  341.            executable size,    but cannot make    use of Object's
  342.            ddddooooeeeessssNNNNoooottttUUUUnnnnddddeeeerrrrssssttttaaaannnndddd::::  method.   Libraries and object
  343.            files compiled with, or without,    -noFwd can be freely
  344.            mixed, but message forwarding will only work for    those
  345.            classes that were compiled with message forwarding
  346.            turned on.
  347.  
  348.  
  349.       ----nnnnooooPPPPoooossssttttlllliiiinnnnkkkk
  350.  
  351.            Allows to generate code for auto-init with compilers
  352.            that are    configured to generate by default code for
  353.            postlink.
  354.  
  355.  
  356.       ----nnnnooooSSSSeeeellllffffAAAAssssssssiiiiggggnnnn
  357.  
  358.            Do not allow self as left hand side in an assignment.
  359.            This is related to the use of instance variables    in
  360.            factory methods.
  361.  
  362.  
  363.       ----nnnnooooTTTTaaaaggggssss
  364.  
  365.            Suppress    generation of line tags    in temporary files.
  366.            Normally, line tags as expected by the C    compiler are
  367.            generated to indicate the line numbers of the original
  368.            source, so that diagnostics will    be issued against the
  369.            Objective C source, not against the generated C output.
  370.  
  371.  
  372.  
  373.       ----nnnnoooossssttttddddiiiinnnncccc
  374.  
  375.            Do not search header files in the standard include
  376.            directories.  This option is system specific, i.e. must
  377.            be supported by the ccccpppppppp(1) preprocessor that is being
  378.            used; it    differs    from the -noI option.
  379.  
  380.  
  381.       ----OOOO    Enable the optimizer.  Whether it is possible to
  382.            specify both -g and -O depends on the C compiler    that
  383.            is being    used.
  384.  
  385.  
  386.       ----oooonnnneeeeppppeeeerrrrffffiiiilllleeee
  387.  
  388.            Allow only one class implementation per compilation
  389.            unit, as    the original Stepstone compiler    does.  The
  390.  
  391.  
  392.  
  393.      Page 6                         (printed 6/28/99)
  394.  
  395.  
  396.  
  397.  
  398.  
  399.  
  400.      oooobbbbjjjjcccc((((1111))))           UUUUNNNNIIIIXXXX SSSSyyyysssstttteeeemmmm VVVV ((((OOOOcccctttt 22229999,,,, 1111999999997777))))           oooobbbbjjjjcccc((((1111))))
  401.  
  402.  
  403.  
  404.            compiler    will generate slightly different structures
  405.            when this flag is used.    The runtime is properly
  406.            initializing both code variants,    and binary object
  407.            files compiled with or without this flag    can be linked
  408.            into the    same program.
  409.  
  410.  
  411.       ----oooobbbbjjjjcccc
  412.  
  413.            Treat files ending with .c as Objective C source    files.
  414.            Normally, files ending with a .m    are assumed to be
  415.            Objective C files, and .c files are assumed to contain
  416.            plain C.
  417.  
  418.  
  419.       ----oooottttbbbb    Use object tables.  This option    causes the compiler to
  420.            generate    code that uses a double    indirection for    Object
  421.            identifiers (handles, instead of    pointers).  It also
  422.            links against runtime libraries called oooottttbbbbccccrrrrtttt....aaaa and
  423.            oooottttbbbbppppaaaakkkk....aaaa,,,, because modules or libraries compiled with
  424.            the -otb    switch ccccaaaannnnnnnnooootttt be mixed with modules that were
  425.            compiled    without    this option.
  426.  
  427.  
  428.       ----ppppgggg    Produce    profiling information for use by ggggpppprrrrooooffff....
  429.  
  430.  
  431.       ----ppppiiiicccc    Generate position independent code (PIC) on systems
  432.            that support it,    for building shared libraries.    On
  433.            some systems, this option translates to -fpic, on other
  434.            systems (e.g. HP-UX) it is equivalent to    +z.
  435.  
  436.  
  437.       ----ppppppppiiii    Include    a set of compatibility header files in the
  438.            default include path (for compatibility with Stepstone
  439.            ICpak101). Also,    allow classes to be defined using 3.x
  440.            Productivity Products International syntax.  This is
  441.            used for    compiling Brad Cox' Smalltalk to Objective-C
  442.            translator.  Implementations of classes start with '='
  443.            instead of the usual @implementation keyword.
  444.            Superclasses still need to be declared with an
  445.            @interface part,    but the    class that is being defined,
  446.            itself, does not    need an    interface par t.
  447.  
  448.  
  449.       ----ppppoooossssttttlllliiiinnnnkkkk
  450.  
  451.            Generate    code for ppppoooossssttttlllliiiinnnnkkkk.... The default is not to do
  452.            this.  If you compile with this option on, you cannot
  453.            combine object files for    Objective C source with    the
  454.            usual link editor lllldddd.... Instead, if you use -postlink,
  455.            you will    be using our ppppoooossssttttlllliiiinnnnkkkk ((((1111)))) link editor
  456.  
  457.  
  458.  
  459.      Page 7                         (printed 6/28/99)
  460.  
  461.  
  462.  
  463.  
  464.  
  465.  
  466.      oooobbbbjjjjcccc((((1111))))           UUUUNNNNIIIIXXXX SSSSyyyysssstttteeeemmmm VVVV ((((OOOOcccctttt 22229999,,,, 1111999999997777))))           oooobbbbjjjjcccc((((1111))))
  467.  
  468.  
  469.  
  470.            processor, which    does additional    processing after
  471.            linking.     Programs compiled with    postlink use a
  472.            somewhat    faster objcrt initialization, at the expense
  473.            of longer link times.  Use the combination of the flags
  474.            -postlink and -retain to    produce    a file ____ppppoooossssttttllllnnnnkkkk....cccc that
  475.            contains    a list of all the Objective C modules that are
  476.            linked into your    program.
  477.  
  478.  
  479.       ----pppprrrroooodddd
  480.  
  481.            Combine target independent independent TDF capsules
  482.            into a TDF archive (a .ta file).     This option is    passed
  483.            on to the ttttcccccccc ((((1111)))) compiler, the archive name can    be set
  484.            with -o.     The resulting platform    independent .ta    file
  485.            can be specified    on the command line as an ordinary .a
  486.            file.
  487.  
  488.  
  489.       ----pppptttthhhhrrrreeeeaaaaddddssss
  490.  
  491.            Link against the    library    lllliiiibbbbpppptttthhhhrrrreeeeaaaaddddssss....aaaa and the runtime
  492.            library oooobbbbjjjjccccrrrrtttttttthhhh....aaaa which    is a thread-safe version of
  493.            the oooobbbbjjjjccccrrrrtttt....aaaa runtime library (compiled with
  494.            -DOBJCRT_PTHREADS).
  495.  
  496.  
  497.       ----qqqquuuuiiiieeeetttt
  498.  
  499.            Disable copyright notice.  Same as -q.
  500.  
  501.  
  502.       ----rrrreeeettttaaaaiiiinnnn
  503.  
  504.            Do not remove intermediate C files.  Normally,
  505.            intermediate C code files are removed after oooobbbbjjjjcccc    has
  506.            made the    C compiler compile them.
  507.  
  508.  
  509.       ----rrrreeeeffffccccnnnntttt
  510.  
  511.            Generate    code for reference counting.  Assignments of
  512.            object variables    are translated towards calls to    the
  513.            iiiiddddaaaassssssssiiiiggggnnnn(((()))) function and code to increment and decrement
  514.            reference counts    is emitted for each compound
  515.            statement.  Only    variables of type iiiidddd are being
  516.            controlled by this option.
  517.  
  518.  
  519.       ----ssssiiiioooouuuuxxxx
  520.  
  521.            Macintosh specific.  Generates a    SIOUX tool.  Adds the
  522.  
  523.  
  524.  
  525.      Page 8                         (printed 6/28/99)
  526.  
  527.  
  528.  
  529.  
  530.  
  531.  
  532.      oooobbbbjjjjcccc((((1111))))           UUUUNNNNIIIIXXXX SSSSyyyysssstttteeeemmmm VVVV ((((OOOOcccctttt 22229999,,,, 1111999999997777))))           oooobbbbjjjjcccc((((1111))))
  533.  
  534.  
  535.  
  536.            libraries defined in the    environment variable
  537.            OBJCSIOUXLIBS.
  538.  
  539.  
  540.       ----ssssttttaaaattttiiiicccc
  541.  
  542.            On systems that support dynamic linking and the -static
  543.            compiler    flag, this prevents linking with shared
  544.            libraries.
  545.  
  546.  
  547.       ----TTTTpppprrrreeeeffffiiiixxxx
  548.  
  549.            Use _p_r_e_f_i_x as prefix for    temporary files    (such as .P,
  550.            .c, .i files) that are generated    by the precompiler.
  551.            For example, ----TTTT////ssssccccrrrraaaattttcccchhhh////    (note the trailing slash) will
  552.            place files in the /scratch directory.  Alternatively,
  553.            the environment variable    TTTTMMMMPPPPDDDDIIIIRRRR can be used to specify
  554.            the directory that should be used.
  555.  
  556.  
  557.       ----uuuunnnnddddeeeeffff
  558.  
  559.            Undefine    all built-in C preprocessor symbols.  This
  560.            option is system    specific, i.e. must be supported by
  561.            the ccccpppppppp(1) preprocessor that is being used.
  562.  
  563.  
  564.       ----uuuunnnnbbbbuuuuffff
  565.  
  566.            Run oooobbbbjjjjcccc1111 in unbuffered output mode.  The default is to
  567.            use block buffering.  Unbuffered    output mode is useful
  568.            for debugging code generation of    the precompiler.
  569.  
  570.  
  571.       ----vvvveeeerrrrssssiiiioooonnnn
  572.  
  573.            Print version of    compiler and quit.
  574.  
  575.  
  576.       ----vvvv    Print commands that are    being executed by the driver
  577.            script.    Same as    -verbose.
  578.  
  579.  
  580.       ----vvvveeeerrrrbbbboooosssseeee
  581.  
  582.            Print commands that are being executed by the driver
  583.            script.    Equivalent to -v.
  584.  
  585.  
  586.       ----wwww    Suppress all warnings.
  587.  
  588.  
  589.  
  590.  
  591.      Page 9                         (printed 6/28/99)
  592.  
  593.  
  594.  
  595.  
  596.  
  597.  
  598.      oooobbbbjjjjcccc((((1111))))           UUUUNNNNIIIIXXXX SSSSyyyysssstttteeeemmmm VVVV ((((OOOOcccctttt 22229999,,,, 1111999999997777))))           oooobbbbjjjjcccc((((1111))))
  599.  
  600.  
  601.  
  602.       ----WWWWlllleeeetttttttteeeerrrr,,,,ooooppppttttiiiioooonnnn
  603.  
  604.            Add ooooppppttttiiiioooonnnn to the list of options passed    to the tool
  605.            identified by lllleeeetttttttteeeerrrr....  Letter can be llll for the link
  606.            editor, cccc for the C compiler, pppp for the C preprocessor,
  607.            or oooo for    the stage 1 Objective C    compiler.  For
  608.            example,    -Wp,-x passes the option -x to cccccccc when it is
  609.            called with the -E flag to do preprocessing.
  610.  
  611.  
  612.       ----wwwwCCCCllllaaaassssssssUUUUsssseeeeddddAAAAssssTTTTyyyyppppeeee
  613.  
  614.            Suppress    warnings when class names are used as types.
  615.            The compiler will translate pointers to classnames to
  616.            "id".
  617.  
  618.  
  619.       ----wwwwUUUUnnnnddddeeeeffffiiiinnnneeeeddddMMMMeeeetttthhhhoooodddd
  620.  
  621.            Suppress    warnings for methods that are not prototyped.
  622.            The compiler will assume    that the return    value and
  623.            argument    types of such methods is "id".
  624.  
  625.  
  626.       ----WWWWaaaallllllll
  627.  
  628.            Passed on the GNU C compiler for    enabling compiler
  629.            warning messages.
  630.  
  631.  
  632.       ----xxxxssssttttrrrr    strings
  633.  
  634.            Run the (modified) BSD program xxxxssssttttrrrr(1) after running
  635.            the Objective C compiler.  This option can somewhat
  636.            reduce the size of Objective C selector tables of the
  637.            executable ( xxxxssssttttrrrr will extract selector strings out of
  638.            the translated Objective    C sources, assemble the
  639.            strings in a file called    "strings", and will cause the
  640.            runtime to use a    single,    shared table of    strings).
  641.            This could also speed up    runtime    initialization as
  642.            selectors don't have to be uniqued anylonger at
  643.            startup.
  644.  
  645.  
  646.       ----YYYYeeeennnnvvvv
  647.  
  648.            Use the specified environment.  This is for the TenDRA
  649.            ttttcccccccc compiler.  Valid values are -Yansi, -Yposix,
  650.            -Yunix95    etc.
  651.  
  652.  
  653.      EEEENNNNVVVVIIIIRRRROOOONNNNMMMMEEEENNNNTTTT
  654.  
  655.  
  656.  
  657.      PPPPaaaaggggeeee 11110000                         ((((pppprrrriiiinnnntttteeeedddd 6666////22228888////99999999))))
  658.  
  659.  
  660.  
  661.  
  662.  
  663.  
  664.      oooobbbbjjjjcccc((((1111))))           UUUUNNNNIIIIXXXX SSSSyyyysssstttteeeemmmm VVVV ((((OOOOcccctttt 22229999,,,, 1111999999997777))))           oooobbbbjjjjcccc((((1111))))
  665.  
  666.  
  667.  
  668.       The most useful environment variable for setting options for
  669.       oooobbbbjjjjcccc is probably OBJCOPT.  It    was introduced in version
  670.       1.3.7    of the compiler    (port to Windows95).  The environment
  671.       variable OBJCDIR is kept for backward    compatibility with
  672.       older    compilers.
  673.  
  674.  
  675.       OBJCOPT
  676.  
  677.            The environment variable    OBJCOPT    can hold a list    of
  678.            options that is always prepended    to the command line
  679.            arguments of oooobbbbjjjjcccc....
  680.            For example, on UNIX, using the ksh shell :
  681.  
  682.             export OBJCOPT="-q -B$HOME/objc1.1.1"
  683.  
  684.            This would set the top location of the distribution,
  685.            and would, in addition, always suppress copyright
  686.            messages.  On Windows95,    the syntax is :
  687.  
  688.             set    OBJCOPT=-q -B\objc
  689.  
  690.  
  691.  
  692.       OBJCDIR
  693.  
  694.            This variable can hold the top location of the oooobbbbjjjjcccc
  695.            distribution.  For example:
  696.  
  697.             for    ksh: export OBJCDIR="$HOME/objc1.1.1"
  698.  
  699.             for    csh: setenv OBJCDIR "$HOME/objc1.1.1"
  700.  
  701.            $OBJCDIR/bin and    $OBJCDIR/man can be added to $PATH and
  702.            $MANPATH    respectively.
  703.  
  704.  
  705.  
  706.       OBJCPATHSEP
  707.  
  708.            This environment    variable, if set, is a string that
  709.            will be used as path separator instead of the default
  710.            separator.  Applies to both objc    and objc1.
  711.  
  712.  
  713.  
  714.       TMPDIR
  715.  
  716.            If set, temporary files will be placed in this
  717.            directory.  The -T option overrides the value set by
  718.            TMPDIR.
  719.  
  720.  
  721.  
  722.  
  723.      Page 11                         (printed 6/28/99)
  724.  
  725.  
  726.  
  727.  
  728.  
  729.  
  730.      oooobbbbjjjjcccc((((1111))))           UUUUNNNNIIIIXXXX SSSSyyyysssstttteeeemmmm VVVV ((((OOOOcccctttt 22229999,,,, 1111999999997777))))           oooobbbbjjjjcccc((((1111))))
  731.  
  732.  
  733.  
  734.       CC    The environment    variable CC can    optionally hold    the
  735.            name of a C compiler that is used to compile
  736.            intermediate C files.
  737.  
  738.  
  739.  
  740.       CPP    The environment    variable CPP can optionally hold the
  741.            name of a C preprocessor    that is    used to    preprocess
  742.            Objective-C input.  The driver is normally configured
  743.            with a default value.
  744.  
  745.  
  746.       CPPFILTER
  747.  
  748.            The environment variable    CPPFILTER can optionally hold
  749.            the name    of a C program that is to be ran after the C
  750.            preprocessor.  The tool will be invoked with two
  751.            arguments : the name of the input file, and the name of
  752.            the output file.
  753.  
  754.  
  755.       OBJCRTMSG
  756.  
  757.            This environment    variable is not    strictly related to
  758.            the compiler, but rather    used by    the runtime and    hence,
  759.            by all Objective-C programs.  It    can be set to either
  760.            ssssttttddddeeeerrrrrrrr or a filename to which messages should be
  761.            logged.    For every message, class of the    receiver and
  762.            name of the selector are    printed    on a line.  This file
  763.            can quickly become very large; it is block buffered,
  764.            unless OBJCRTDBG    is set,    in which case it is line
  765.            buffered.
  766.  
  767.  
  768.       OBJCRTDBG
  769.  
  770.            Like OBJCRTMSG, this variable is    consulted by the
  771.            runtime.     It can    be set to either ssssttttddddeeeerrrrrrrr    or a filename
  772.            to which    messages of the    ddddbbbbgggg(((()))) function should be
  773.            logged.    If this    variable is set, output    for OBJCRTDBG
  774.            and OBJCRTMSG is    line buffered.
  775.  
  776.  
  777.      BBBBUUUUGGGGSSSS
  778.       Send bug reports to objc-bugs@cys.de.     Also see the
  779.       objc-users mailing list (subscribe by    sending    email to
  780.       objc-users-request@cys.de).
  781.  
  782.  
  783.      SSSSEEEEEEEE AAAALLLLSSSSOOOO
  784.       cc(1), postlink(1), cvtimport(1)
  785.  
  786.  
  787.  
  788.  
  789.      Page 12                         (printed 6/28/99)
  790.  
  791.  
  792.  
  793.  
  794.  
  795.  
  796.      oooobbbbjjjjcccc((((1111))))           UUUUNNNNIIIIXXXX SSSSyyyysssstttteeeemmmm VVVV ((((OOOOcccctttt 22229999,,,, 1111999999997777))))           oooobbbbjjjjcccc((((1111))))
  797.  
  798.  
  799.  
  800.  
  801.  
  802.  
  803.  
  804.  
  805.  
  806.  
  807.  
  808.  
  809.  
  810.  
  811.  
  812.  
  813.  
  814.  
  815.  
  816.  
  817.  
  818.  
  819.  
  820.  
  821.  
  822.  
  823.  
  824.  
  825.  
  826.  
  827.  
  828.  
  829.  
  830.  
  831.  
  832.  
  833.  
  834.  
  835.  
  836.  
  837.  
  838.  
  839.  
  840.  
  841.  
  842.  
  843.  
  844.  
  845.  
  846.  
  847.  
  848.  
  849.  
  850.  
  851.  
  852.      Page 13                         (printed 6/28/99)
  853.  
  854.  
  855.  
  856.  
  857.  
  858.  
  859.